import shutil
# 复制
# 3. shutil.copy(src, dest):  src  dest 文件的路径
#    复制文件内容和权限
shutil.copy("/usr/bin/ls", "/opt/cp_ls_2")

# 2. shutil.copyfile(src, dest):  src  dest 文件的路径
#    只能复制文件内容，不能复制文件的权限
shutil.copyfile("/usr/bin/ls", "/opt/cp_ls")

# 1. shuitl.copyfileobj(fr, fw):    fr, fw 文件操作对象
f1 = open("/etc/hosts", mode="r")
f2 = open("/opt/01hosts", mode="w")
shutil.copyfileobj(f1, f2)
f1.close()
f2.close()
# 移动
# 4. shutil.move(src, dest):  src  dest 文件的路径
shutil.move("/opt/cp_ls_2", "/opt/cp_ls_20")

# 复制目录: 递归复制  cp -r: 目录存在则不能重复复制
# shutil.copytree("/etc/security", "/opt/security")
# 删除目录:
# shutil.rmtree("/opt/security")
# 权限管理
# 只复制文件的权限
# 前戏: cd /opt      touch ddd.txt
# 将/usr/bin/ls权限赋值给    /opt/ddd.txt
shutil.copymode("/usr/bin/ls", "/opt/ddd.txt")
# 前戏: useradd zhangfei
shutil.chown("/opt/ddd.txt", user="zhangfei", group="zhangfei")
